package com.pine.dbant.core.model.vo;

import com.pine.dbant.common.model.ITree;
import lombok.Getter;
import lombok.Setter;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

@Setter
@Getter
public class DirTreeVO implements ITree<DirTreeVO, Long> {

    /**
     * 节点类型
     */
    @Getter
    public enum Type {
        /**
         * 目录
         */
        DIR,
        /**
         * 连接
         */
        CONN,
    }

    /**
     * id
     */
    private Long id;
    /**
     * 父id
     */
    private Long parentId;
    /**
     * 目录名字
     */
    private String name;


    /**
     * 目录类型：是目录或者是任务
     */
    private Type type;


    /**
     * 参数
     */
    private Map<String,Object> properties;

    /**
     * 子目录数据
     */

    private List<DirTreeVO> children = new ArrayList<>();

}
